package com.sailfish.template.infra.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.*;

import java.util.Date;

/**
 * @author XIAXINYU3
 * @date 2021/11/2
 */
@Getter
@Setter
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("pm_project")
public class Project {
    /**
     * 主键
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 项目名称
     */
    private String name;

    /**
     * 项目状态
     */
    private String status;

    /**
     * 项目类型
     */
    private Long typeId;

    /**
     * 行云项目
     */
    private String iamProjectId;

    /**
     * 组织id
     */
    private String iamOrganizationId;

    /**
     * 部门
     */
    private String department;

    /**
     * 项目经理id
     */
    private String managerId;

    /**
     * 项目需求方
     */
    private String demandSide;

    /**
     * 开始时间
     */
    private String startTime;

    /**
     * 结束时间
     */
    private String endTime;

    /**
     * '是否启用。1启用，0未启用'
     */
    private String background;

    /**
     * '是否启用。1启用，0未启用'
     */
    private String description;

    /**
     * '是否启用。1启用，0未启用'
     */
    private Integer enabled;

    /**
     * 乐观锁-版本
     */
    private Integer dataVersion;

    /**
     * 创建人
     */
    @TableField(fill = FieldFill.INSERT)
    private Long createdBy;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date creationDate;

    /**
     * 更新人
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long lastUpdatedBy;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date lastUpdateDate;

    /**
     * 删除标识,0:正常,1或ID:删除
     */
    @TableLogic(delval = "id")
    private Long deleted;
}
